home *** CD-ROM | disk | FTP | other *** search
/ OpenGL Superbible (2nd Edition) / OpenGL SuperBible e2.iso / tools / GLUT-3.7 / LIB / GLUT / layerutil.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-08-12  |  1.5 KB  |  56 lines

  1. #ifndef __layerutil_h__
  2. #define __layerutil_h__
  3.  
  4. /* Copyright (c) Mark J. Kilgard, 1993, 1994. */
  5.  
  6. /* This program is freely distributable without licensing fees 
  7.    and is provided without guarantee or warrantee expressed or 
  8.    implied. This program is -not- in the public domain. */
  9.  
  10. /* Based on XLayerUtil.h: Revision: 1.3 */
  11.  
  12. #if !defined(_WIN32)
  13. #include <X11/Xlib.h>
  14. #include <X11/Xutil.h>
  15. #include <X11/Xmd.h>
  16. #endif /* !_WIN32 */
  17.  
  18. /* Transparent type values */
  19. /* None                       0 */
  20. #define TransparentPixel      1
  21. #define TransparentMask       2
  22.  
  23. /* layered visual info template flags */
  24. #define VisualLayerMask        0x200
  25. #define VisualTransparentType    0x400
  26. #define VisualTransparentValue    0x800
  27. #define VisualAllLayerMask    0xFFF
  28.  
  29. /* layered visual info structure */
  30. typedef struct _XLayerVisualInfo {
  31.   XVisualInfo vinfo;
  32.   long layer;
  33.   long type;
  34.   unsigned long value;
  35. } XLayerVisualInfo;
  36.  
  37. /* SERVER_OVERLAY_VISUALS property element */
  38. typedef struct _OverlayInfo {
  39.   /* Avoid 64-bit portability problems by being careful to use
  40.      longs due to the way XGetWindowProperty is specified. Note
  41.      that these parameters are passed as CARD32s over X
  42.      protocol. */
  43.   long overlay_visual;
  44.   long transparent_type;
  45.   long value;
  46.   long layer;
  47. } OverlayInfo;
  48.  
  49. extern int __glutGetTransparentPixel(Display *, XVisualInfo *);
  50. extern XLayerVisualInfo *__glutXGetLayerVisualInfo(Display *,
  51.   long, XLayerVisualInfo *, int *);
  52. extern Status __glutXMatchLayerVisualInfo(Display *,
  53.   int, int, int, int, XLayerVisualInfo *);
  54.  
  55. #endif /* __layerutil_h__ */
  56.